//
// Created by Zhangwj on 2023/9/26.
//

#ifndef COMPILE_TASK2_BLOCKNODE_H
#define COMPILE_TASK2_BLOCKNODE_H


#include "SyntaxTreeNode.h"
#include "../Parser.h"
#include "BlockItemNode.h"

class BlockNode : public SyntaxTreeNode {
public:
    // Block → '{' { BlockItem } '}'
    std::vector<std::unique_ptr<BlockItemNode>> BlockItems;

    static std::unique_ptr<BlockNode> BlockParser(Parser &parser);
};


#endif //COMPILE_TASK2_BLOCKNODE_H
